package com.alameda.manage.enums;

import com.baomidou.mybatisplus.annotation.EnumValue;
import lombok.AllArgsConstructor;
import lombok.Getter;

/**
 * 状态枚举
 *
 * @author Lv
 * @date 2024/08/04
 */
@Getter
@AllArgsConstructor
public enum StateEnum {
    /**
     * 设计中
     */
    IN_DESIGN(0, "设计中"),

    /**
     * 开发中
     */
    IN_DEVELOPMENT(1, "开发中"),

    /**
     * 已完成
     */
    DONE(2, "已完成"),

    ;
    /**
     * 类型
     */
    @EnumValue
    private Integer key;

    /**
     * 描述
     */
    private String value;

    /**
     * 通过枚举key获取枚举描述
     *
     * @param key 枚举key
     * @return
     */
    public static String getValueByKey(Integer key) {
        StateEnum[] stateEnums = StateEnum.values();
        String value = null;
        for (StateEnum stateEnum : stateEnums) {
            if (stateEnum.key.equals(key)) {
                value = stateEnum.value;
            }
        }
        return value;
    }
}
